#include <iostream>
#include "btree.h"
#include "MyCircularDeque.h"
#include "stringstream_study.h"
#include "Day2.h"
#include "Day4.h"
#include "Day5.h"

#define print_vector(in_vector) \
         /*std::cout<< " in_vector size:  " << in_vector.size() <<std::endl;*/ \
        for (auto c: in_vector) { \
            std::cout << c <<"-"; \
        } ; std::cout <<std::endl


int main() {
//    auto* root = new TreeNode(1);
//    auto* left = new TreeNode(2);
// [5,4,6,null,null,3,7]

/*
           5
    4               6
                3       7
 */
    TreeNode root(5);
    TreeNode l1_1(4);
    TreeNode l1_2(6);

    TreeNode l2_3(3);
    TreeNode l2_4(7);

    root.left = &l1_1;
    root.right = & l1_2;

    l1_1.left = nullptr;
    l1_1.right = nullptr;

    l1_2.left = &l2_3;
    l1_2.right = &l2_4;
   bool x =  Day5::isValidBST(& root);
   std::cout<< x <<  std::endl;
}